const axios = require('axios');

// 演示完整的两步流程
async function demoCompleteFlow() {
  const baseURL = 'http://localhost:3000/api/products';
  const testUrl = 'https://shop.tiktok.com/view/product/1731808168774042656?region=MY&local=en&source=product_detail';
  
  console.log('=== TikTok商品信息获取完整流程演示 ===\n');

  try {
    // 步骤一：处理TikTok商品链接，获取商品名称
    console.log('步骤一：处理TikTok商品链接...');
    console.log('URL:', testUrl);
    
    const step1Response = await axios.post(baseURL, {
      url: testUrl
    });
    
    console.log('✅ 步骤一完成 - 商品基本信息已保存');
    console.log('商品ID:', step1Response.data.data.id);
    console.log('商品名称:', step1Response.data.data.productName);
    console.log('');

    // 等待一秒
    await new Promise(resolve => setTimeout(resolve, 1000));

    // 步骤二：根据商品名称搜索Shoplus API并更新数据库
    console.log('步骤二：搜索Shoplus API并更新商品信息...');
    
    const productId = step1Response.data.data.id;
    const step2Response = await axios.post(`${baseURL}/${productId}/auto-update`);
    
    console.log('✅ 步骤二完成 - 商品详细信息已更新');
    console.log('');

    // 显示最终结果
    console.log('=== 最终商品信息 ===');
    const finalProduct = step2Response.data.data.product;
    
    console.log(`商品ID: ${finalProduct.id}`);
    console.log(`商品名称: ${finalProduct.productName}`);
    console.log(`排名: ${finalProduct.rank}`);
    console.log(`价格(USD): $${finalProduct.priceUsd}`);
    console.log(`价格(RMB): RM${finalProduct.price}`);
    console.log(`店铺名称: ${finalProduct.sellerName}`);
    console.log(`周销售量: ${finalProduct.weekSoldCount}`);
    console.log(`周销售额(RMB): ${finalProduct.weekSales}`);
    console.log(`周销售额(USD): ${finalProduct.weekSalesUsd}`);
    console.log(`总销售额(USD): ${finalProduct.totalSalesUsd}`);
    console.log(`总销售额(RMB): ${finalProduct.totalSales}`);
    console.log(`关联视频数: ${finalProduct.relatedVideos}`);
    console.log(`关联达人数: ${finalProduct.relatedAuthor}`);
    console.log(`创建时间: ${finalProduct.createTime}`);
    console.log(`更新时间: ${finalProduct.updateTime}`);
    console.log('');

    console.log('🎉 完整流程演示成功！');
    console.log('');
    console.log('📊 数据来源说明:');
    console.log('- 商品名称: 来自TikTok商品页面爬取');
    console.log('- 排名、价格、销售数据: 来自Shoplus API');
    console.log('- 所有数据已保存到数据库表 t_product');

  } catch (error) {
    console.error('❌ 演示失败:', error.message);
    
    if (error.response) {
      console.error('响应状态:', error.response.status);
      console.error('响应数据:', JSON.stringify(error.response.data, null, 2));
    }
  }
}

// 运行演示
demoCompleteFlow();